From 5bcc7775a7b488d59cc885c5dee9694e89eb53eb Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Tue, 6 Jul 2010 16:49:59 +0100 Subject: [PATCH] rombios: pause for a keypress after a failed boot rombios: inform the user and pause for a keypress after a failed boot rather than powering off immediately. Signed-off-by: Tim Deegan --- tools/firmware/rombios/rombios.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/tools/firmware/rombios/rombios.c b/tools/firmware/rombios/rombios.c index 26a952f649..1c05d99e75 100644 --- a/tools/firmware/rombios/rombios.c +++ b/tools/firmware/rombios/rombios.c @@ -8243,7 +8243,27 @@ Bit16u seq_nr; write_word(ebda_seg, IPL_BOOTFIRST_OFFSET, 0xFFFF); /* Reset boot sequence */ write_word(ebda_seg, IPL_SEQUENCE_OFFSET, 0xFFFF); - } else if (bootdev == 0) BX_PANIC("No bootable device.\n"); + } else if (bootdev == 0) { + printf("\nNo bootable device.\n"); + printf("Reboot or press any key to retry."); + write_word(ebda_seg, IPL_SEQUENCE_OFFSET, 0xFFFF); +ASM_START + sti +ASM_END + { + Bit8u sc, ac; + while(!dequeue_key(&sc, &ac, 1)) { +ASM_START + hlt +ASM_END + } + } +ASM_START + cli +ASM_END + printf("\n\n"); + return; + } /* Translate from CMOS runes to an IPL table offset by subtracting 1 */ bootdev -= 1; -- 2.30.2